﻿#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;

namespace A {
	int a = 10;
	int b = 20;
	int c = 30;
}

void test01() {
	// using声明是让命名空间中某个标识符可以直接使用 
	using A::a;
	cout << a << endl;
	// int a = 1; // 注意：using声明了某个变量，在该作用域内不能定义同名的变量 
}

void test02() {
	// using编译指令，让该行以下可以直接使用某个命名空间中的标识符，省略编写命名空间前缀
	using namespace A;
	cout << a << endl; // 10 
	cout << b << endl; // 20 
	cout << c << endl; // 30 
	int a = 100; // 这里为什么不报错 
	cout << "a=" << a << endl; // 类似于命名空间中的a是全局变量，这里的a是局部变量 100 
}

int main()
{
	//test01();
	test02();

	system("pause");
	return EXIT_SUCCESS;
}